package com.xpsoft.oa.model.admin;


import java.util.HashSet;
import java.util.Set;

import com.google.gson.annotations.Expose;
import com.xpsoft.oa.model.project.Project;
import com.xpsoft.oa.model.system.AppUser;
import com.xpsoft.oa.model.system.Department;
import com.xpsoft.oa.model.system.FileAttach;

/**
 * SealApply Base Java Bean, base class for the.oa.model, mapped directly to database table
 * 
 * Avoid changing this file if not necessary, will be overwritten. 
 *
 * TODO: add class/table comments
 */
public class SealApply extends com.xpsoft.core.model.BaseModel {
	@Expose
    protected Long id;  
	@Expose
	protected AppUser applyUser;
	@Expose
	protected Department dept;
	@Expose
	protected String proNeed;
	@Expose
	protected Project project;
	@Expose
	protected String sealType;
	@Expose
	protected String sealPurpose;
	@Expose
	protected String sealDesc;
	@Expose
	protected String remark;
	@Expose
	protected Long processRunId;
	@Expose
	protected Set<FileAttach> fileAttachs = new HashSet<FileAttach>();
	/**
	 * Default Empty Constructor for class SealApply
	 */
	public SealApply () {
		super();
	}
	
	/**
	 * Default Key Fields Constructor for class SealApply
	 */
	public SealApply (
		 Long in_id
        ) {
		this.setId(in_id);
    }

    

	/**
	 * 	 * @return Long
     * @hibernate.id column="id" type="java.lang.Long" generator-class="native"
	 */
	public Long getId() {
		return this.id;
	}
	
	/**
	 * Set the id
	 */	
	public void setId(Long aValue) {
		this.id = aValue;
	}	


	public Set<FileAttach> getFileAttachs() {
		return fileAttachs;
	}

	public void setFileAttachs(Set<FileAttach> fileAttachs) {
		this.fileAttachs = fileAttachs;
	}

	/**
	 * 项目需要	 * @return String
	 * @hibernate.property column="proNeed" type="java.lang.String" length="10" not-null="false" unique="false"
	 */
	public String getProNeed() {
		return this.proNeed;
	}
	
	/**
	 * Set the proNeed
	 */	
	public void setProNeed(String aValue) {
		this.proNeed = aValue;
	}	


	public Long getProcessRunId() {
		return processRunId;
	}

	public void setProcessRunId(Long processRunId) {
		this.processRunId = processRunId;
	}

	/**
	 * 印章类型	 * @return String
	 * @hibernate.property column="sealType" type="java.lang.String" length="128" not-null="false" unique="false"
	 */
	public String getSealType() {
		return this.sealType;
	}
	
	/**
	 * Set the sealType
	 */	
	public void setSealType(String aValue) {
		this.sealType = aValue;
	}	

	/**
	 * 用印用途	 * @return String
	 * @hibernate.property column="sealPurpose" type="java.lang.String" length="65535" not-null="false" unique="false"
	 */
	public String getSealPurpose() {
		return this.sealPurpose;
	}
	
	/**
	 * Set the sealPurpose
	 */	
	public void setSealPurpose(String aValue) {
		this.sealPurpose = aValue;
	}	

	/**
	 * 用印描述	 * @return String
	 * @hibernate.property column="sealDesc" type="java.lang.String" length="65535" not-null="false" unique="false"
	 */
	public String getSealDesc() {
		return this.sealDesc;
	}
	
	/**
	 * Set the sealDesc
	 */	
	public void setSealDesc(String aValue) {
		this.sealDesc = aValue;
	}	

	/**
	 * 备注	 * @return String
	 * @hibernate.property column="remark" type="java.lang.String" length="65535" not-null="false" unique="false"
	 */
	public String getRemark() {
		return this.remark;
	}
	
	/**
	 * Set the remark
	 */	
	public void setRemark(String aValue) {
		this.remark = aValue;
	}

	public AppUser getApplyUser() {
		return applyUser;
	}

	public void setApplyUser(AppUser applyUser) {
		this.applyUser = applyUser;
	}

	public Department getDept() {
		return dept;
	}

	public void setDept(Department dept) {
		this.dept = dept;
	}

	public Project getProject() {
		return project;
	}

	public void setProject(Project project) {
		this.project = project;
	}	
	
}
